package com.ztgf.shopping.models.service.epg;

import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
import com.ztgf.common.constant.Result;
import com.ztgf.shopping.models.bo.epg.EpgConsultingServiceQueryBO;
import com.ztgf.shopping.models.bo.epg.EpgConsultingServiceSaveBO;
import com.ztgf.shopping.models.dto.epg.EpgConsultingServiceDTO;
import com.ztgf.shopping.models.vo.epg.EpgConsultingServicePageVO;

/*
 * 首页咨询接口
 * */
public interface IEpgConsultingService extends IService<EpgConsultingServiceDTO> {

    /**
     * @return : com.ztgf.common.constant.Result<?>
     * @Author :chenyu.wang
     * @Description : 添加首页咨询表
     * @Date : 2021.01.26 10:50
     * @Param : [bo]
     **/
    Result<?> add(EpgConsultingServiceSaveBO bo);

    /**
     * @return : com.baomidou.mybatisplus.plugins.Page<com.ztgf.shopping.models.vo.epg.EpgConsultingServicePageVO>
     * @Author :chenyu.wang
     * @Description : 后台管理系统首页咨询列表
     * @Date : 2021.01.26 11:43
     * @Param : [queryBO]
     **/
    Page<EpgConsultingServicePageVO> queryPageList(EpgConsultingServiceQueryBO queryBO);

    /**
     * @return : com.ztgf.common.constant.Result<?>
     * @Author :chenyu.wang
     * @Description : 修改首页咨询
     * @Date : 2021.01.26 16:37
     * @Param : [updateBo]
     **/
    Result<?> update(EpgConsultingServiceSaveBO updateBo);

    /**
     * @return : com.ztgf.common.constant.Result<?>
     * @Author :chenyu.wang
     * @Description : 软删除首页咨询表
     * @Date : 2021.01.26 16:47
     * @Param : [id]
     **/
    Result<?> delete(Long id);

    /**
     * @return : com.ztgf.common.constant.Result<?>
     * @Author :chenyu.wang
     * @Description : 修改是否置顶
     * @Date : 2021.01.26 16:53
     * @Param : [id]
     **/
    Result<?> updateIsTop(Long id);

    /**
     * @return : com.ztgf.common.constant.Result<?>
     * @Author :chenyu.wang
     * @Description : 修改是否热标签
     * @Date : 2021.01.26 17:11
     * @Param : [id]
     **/
    Result<?> updateIsHot(Long id);

    /**
     * @return : com.ztgf.common.constant.Result<?>
     * @Author :chenyu.wang
     * @Description : 修改排序号
     * @Date : 2021.01.26 17:15
     * @Param : [id, sort]
     **/
    Result<?> updateSort(Long id, Integer sort);

    /**
     * @return : com.ztgf.common.constant.Result<?>
     * @Author :chenyu.wang
     * @Description : 批量删除
     * @Date : 2021.01.26 17:36
     * @Param : [ids]
     **/
    Result<?> deleteBatch(String ids);

    /**
     * @return : boolean
     * @Author :chenyu.wang
     * @Description : 修改是否隐藏
     * @Date : 2021.03.18 11:38
     * @Param : [id]
     **/
    boolean updateIsPush(Long id);

}
